package com.hrm.dao;

import com.hrm.dto.EmpSalaryDTO;
import com.hrm.dto.EmpSalaryRecordDTO;
import com.hrm.entity.EmpSalary;
import com.hrm.entity.EmpSalaryExample;

import java.util.List;

import org.apache.ibatis.annotations.Param;

public interface EmpSalaryMapper {
    long countByExample(EmpSalaryExample example);

    int deleteByExample(EmpSalaryExample example);

    int deleteByPrimaryKey(Integer salaryId);

    int insert(EmpSalary record);

    int insertSelective(EmpSalary record);

    List<EmpSalary> selectByExample(EmpSalaryExample example);

    EmpSalary selectByPrimaryKey(Integer salaryId);

    int updateByExampleSelective(@Param("record") EmpSalary record, @Param("example") EmpSalaryExample example);

    int updateByExample(@Param("record") EmpSalary record, @Param("example") EmpSalaryExample example);

    int updateByPrimaryKeySelective(EmpSalary record);

    int updateByPrimaryKey(EmpSalary record);

    List<EmpSalaryDTO> empSalaryList();

    int updatePayTime(@Param("salaryId") Integer salaryId, @Param("payTime") Integer payTime);

    int updateBasicSalary(@Param("id") Integer id,@Param("basicSalary") Integer basicSalary);

    List<EmpSalaryRecordDTO> recordList(Integer id);

    int delSalaryRecord(EmpSalaryRecordDTO recordDTO);

    int addRecord(EmpSalaryRecordDTO recordDTO);

    int updateBonusOrDeduct(EmpSalaryRecordDTO recordDTO);

    int delBonusOrDeduct(EmpSalaryRecordDTO recordDTO);
}